/**  
* @author renbangjie renbangjie@126.com  
* @date 2015年12月19日 上午11:36:16
* @version V1.0  
*/
package com.ai.service.reviewed.dao;

import java.util.List;
import java.util.Map;

import com.ai.common.core.mapper.Mapper;
import com.ai.mmd.reviewed.dto.SbhzinfoDTO;
import com.ai.mmd.reviewed.dto.SbhzinfoExtDTO;
import com.ai.mmd.reviewed.dto.StatisticsDTO;
import com.ai.mmd.reviewed.dto.StatisticsHwlxDTO;
import com.ai.mmd.reviewed.vo.PreviewinfoVO;
import com.ai.mmd.reviewed.vo.SbhzinfoVO;
import com.ai.mmd.reviewed.vo.SbmxinfoExtVO;
import com.ai.mmd.reviewed.vo.SbmxinfoVO;
import com.ai.mmd.reviewed.vo.StatisticsHwlxVO;
import com.ai.mmd.reviewed.vo.StatisticsVO;
import com.ai.mmd.reviewed.vo.YhxxVO;
import com.ai.service.reviewed.model.SbhzinfoModel;
import com.ai.service.reviewed.model.SbmxinfoModel;

/**
* 
*	登陆信息的mapper
* 
* @author renbangjie renbangjie@126.com
* @date 2015年12月19日 上午11:36:16
*/
public interface SbhzinfoModelMapper extends Mapper<SbhzinfoModel> {
	
	/**
     * 获得申报单号
     * @param String
     * @return
     * @throws Exception
     */
	public String getSequence(String key);
	
	/**
     * 获得货物运单号列表
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public List<Map<String, String>> getHwydhList(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 获得铁路货票号列表
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public List<Map<String, String>> getTlhphList(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 箱量统计
     * @param StatisticsDTO
     * @return
     * @throws Exception
     */
	public List<StatisticsVO> getXlStatistics(StatisticsDTO statisticsDTO);
	
	/**
     * 货物类型统计
     * @param StatisticsHwlxDTO
     * @return
     * @throws Exception
     */
    List<StatisticsHwlxVO> getHwlxStatistics(StatisticsHwlxDTO statisticsHwlxDTO)
            throws Exception;
    
    /**
     * 查询申报港口数据列表
     * @param SbhzinfoExtDTO
     * @return
     * @throws Exception
     */
    List<SbmxinfoExtVO> getsbgkList(SbhzinfoExtDTO sbhzinfoExtDTO)
            throws Exception;
    
    /**
     * 查询申报站点数据列表
     * @param SbhzinfoExtDTO
     * @return
     * @throws Exception
     */
    List<SbmxinfoExtVO> getsbzdList(SbhzinfoExtDTO sbhzinfoExtDTO)
            throws Exception;
    
    /**
     * 起点终点统计
     * @param StatisticsDTO
     * @return
     * @throws Exception
     */
	public List<StatisticsVO> getfromtoStatistics(StatisticsDTO statisticsDTO);
	
	/**
     * 根据汇总单号查询箱号明细
     * @param StatisticsDTO
     * @return
     * @throws Exception
     */
	public List<Map<String, Object>> getxhDetail(Map<String, Object> map);
	
	/**
     * 获得比对有质疑的明细列表
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public List<SbmxinfoModel> getCompareWorngList(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 获得比对有质疑的明细总数
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public Integer getCompareWorngListCount(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 首页统计总箱量和总金额
     * @param 
     * @return
     * @throws Exception
     */
	public List<SbhzinfoVO> getStatisticsForIndex(Map<Object, Integer> map);
	
	/**
     * 获得该年度有申报记录的企业
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public List<YhxxVO> getCompanyList(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 获得该年度有申报记录的企业
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public StatisticsVO getALLStatistics(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 查询预览列表
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public PreviewinfoVO getPreviewList(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 查询热力数据
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public StatisticsVO gethotmapList(SbhzinfoDTO sbhzinfoDTO);
	
	/**
     * 查询时间错误数据
     * @param SbhzinfoDTO
     * @return
     * @throws Exception
     */
	public List<SbmxinfoVO> getTimeErrorList(SbhzinfoDTO sbhzinfoDTO);
}
